package leetcode.editor.cn;
//[283]移动零
public class MoveZeroes283{
public static void main(String[] args) {
   Solution solution = new MoveZeroes283().new Solution();
   //1. copy 1 arrays move zero to last

    //change index 记录非0的指针位置。 把所有的非 零都移动。

    //第二种。遇到0删除，把0移到最后。
}

  //leetcode submit region begin(Prohibit modification and deletion)
//把！0 的元素，左移动。 0的都放到最后。 2022-06-27 15:11:26
class Solution {
    public void moveZeroes(int[] nums) {
        //change index 记录非0的指针位置。 把所有的非 零都移动。
        //left 指针记录 非零 指针的位置。
        // 把非零都移到左边，右边的都是零
        int indexNotZero = 0 ;
        for (int i = 0; i < nums.length; i++) {
            if (nums[i] != 0){
                if (i!= indexNotZero){//如果不是同一个位置。那么 i 为为 0
                    nums[indexNotZero] = nums[i];
                    nums[i] = 0;
                }
                indexNotZero ++;
            }
        }
    }
}
//leetcode submit region end(Prohibit modification and deletion)

}